<div class="entity-form-buttons-button-group">
  <nz-button-group nzSize="small">
    <ng-content select="[beforeNewBtn]"></ng-content>
    <button
      nz-button
      *ngIf="newBtnVisible"
      nzType="link"
      [disabled]="newBtnDisabled"
      (click)="OnNewBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.New' | abpLocalization }}
    </button>
    <ng-content select="[afterNewBtn]"></ng-content>

    <ng-content select="[beforeDeleteBtn]"></ng-content>
    <button
      nz-button
      *ngIf="deleteBtnVisible"
      nzType="link"
      [disabled]="deleteBtnDisabled"
      (click)="OnDeleteBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Delete' | abpLocalization }}
    </button>
    <ng-content select="[afterDeleteBtn]"></ng-content>

    <ng-content select="[beforeOperateDivider]"></ng-content>
    <nz-divider *ngIf="operateDividerVisible" nzType="vertical"></nz-divider>
    <ng-content select="[afterOperateDivider]"></ng-content>

    <ng-content select="[beforeSubmitBtn]"></ng-content>
    <button
      nz-button
      *ngIf="submitBtnVisible"
      nzType="link"
      [disabled]="submitBtnDisabled"
      (click)="OnSubmitBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Submit' | abpLocalization }}
    </button>
    <ng-content select="[afterSubmitBtn]"></ng-content>

    <ng-content select="[beforeBackBtn]"></ng-content>
    <button
      nz-button
      *ngIf="backBtnVisible"
      nzType="link"
      [disabled]="backBtnDisabled"
      (click)="OnBackBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Back' | abpLocalization }}
    </button>
    <ng-content select="[afterBackBtn]"></ng-content>

    <ng-content select="[beforeApproveBtn]"></ng-content>
    <button
      nz-button
      *ngIf="approveBtnVisible"
      nzType="link"
      [disabled]="approveBtnDisabled"
      (click)="OnApproveBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Approve' | abpLocalization }}
    </button>
    <ng-content select="[afterApproveBtn]"></ng-content>

    <ng-content select="[beforeUnapproveBtn]"></ng-content>
    <button
      nz-button
      *ngIf="unapproveBtnVisible"
      nzType="link"
      [disabled]="unapproveBtnDisabled"
      (click)="OnUnapproveBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Unapprove' | abpLocalization }}
    </button>
    <ng-content select="[afterUnapproveBtn]"></ng-content>

    <ng-content select="[beforeApproveDivider]"></ng-content>
    <nz-divider *ngIf="approveDividerVisible" nzType="vertical"></nz-divider>
    <ng-content select="[afterApproveDivider]"></ng-content>

    <ng-content select="[beforeExportBtn]"></ng-content>
    <button
      nz-button
      *ngIf="exportBtnVisible"
      nzType="link"
      [disabled]="exportBtnDisabled"
      (click)="OnExportBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Export' | abpLocalization }}
    </button>
    <ng-content select="[afterExportBtn]"></ng-content>

    <ng-content select="[beforePrintBtn]"></ng-content>
    <button
      nz-button
      *ngIf="printBtnVisible"
      nzType="link"
      [disabled]="printBtnDisabled"
      (click)="OnPrintBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Print' | abpLocalization }}
    </button>
    <ng-content select="[afterPrintBtn]"></ng-content>

    <ng-content select="[beforeExportDivider]"></ng-content>
    <nz-divider *ngIf="exportDividerVisible" nzType="vertical"></nz-divider>
    <ng-content select="[afterExportDivider]"></ng-content>

    <ng-content select="[beforeRefreshBtn]"></ng-content>
    <button
      nz-button
      *ngIf="refreshBtnVisible"
      nzType="link"
      [disabled]="refreshBtnDisabled"
      (click)="OnRefreshBtnClick()"
    >
      {{ 'BasicArchives::UI:SimplyList.FormButtons.Refresh' | abpLocalization }}
    </button>
    <ng-content select="[afterRefreshBtn]"></ng-content>
  </nz-button-group>
</div>
<div>
  <nz-input-group nzSearch nzSize="small" [nzAddOnAfter]="suffixButton">
    <input
      type="text"
      nz-input
      [(ngModel)]="code"
      [placeholder]="searchPlaceholder"
      (keyup.enter)="OnSearchBtnClick()"
    />
  </nz-input-group>
  <ng-template #suffixButton>
    <nz-button-group>
      <button nz-button nzSize="small" (click)="OnSearchBtnClick()">{{ 'BasicArchives::UI:SimplyList.FormButtons.Search' | abpLocalization }}</button>
      <button
        *ngIf="searchDetailBtnVisible"
        nz-button
        nzSize="small"
        nz-dropdown [nzDropdownMenu]="menuExtend"
        style="padding-left: 4px; padding-right: 4px;"
      >
        <span nz-icon nzType="down" style="font-size: 0.5em; position: relative; top: -0.2em;"></span>
        <nz-dropdown-menu #menuExtend="nzDropdownMenu">
          <ul nz-menu>
            <li nz-menu-item *ngFor="let searchDropdownMenuItem of searchDropdownMenuItems" (click)="searchDropdownMenuItem.fn()">{{ searchDropdownMenuItem.itemDisplayName }}</li>
          </ul>
        </nz-dropdown-menu>
      </button>
    </nz-button-group>
  </ng-template>
</div>
